<?php

namespace App\Http\Controllers\admin\goods;

use Illuminate\Http\Request;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use DB;

class GoodsController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    //显示商品列表
    public function index()
    {
        //
        //echo 111;
        //查询商品表
        $ob = DB::table('goods');
        //添加where条件判断商品审核是否通过
        $ob->where('status', '=', 1);
        //分页
        $list = $ob->paginate(5);
        return view('admin.goods.list',['list'=>$list]);
    }


    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    
    //删除商品
    public function destroy($id)
    {
        //执行删库
        $res = DB::table('goods')->where('id',$id)->delete();
        //判断此行数据是否删除
        if($res > 0){
            return redirect('admin/goods')->with('msg', '删除成功');
        }else{
            return redirect('admin/goods')->with('error', '删除失败');
        }
    }


    //商品加精
    public function doHot(Request $request, $id)
    {   
        //查询要加精的数据
        $hot = DB::table('goods')->where('id', $id)->first();
        //创建一个标记
        $flag = null;
        //标记与数据库里的信息取反
        if($hot->hot == 1){

            $flag = 0;
        }else{
            $flag = 1;
        }

        //通过取反后标记修改数据库
        $res = DB::table('goods')->where('id', $id)->update(['hot' => $flag]);

        //前台显示加精成功与否
        if($res > 0){
            return redirect('admin/goods')->with('msg', '加精成功');
        }else{
            return redirect('admin/goods')->with('error', '加精失败');
        }
    }

    //显示未审核的商品列表
     public function indexAuditing()
    {
        //
        //
        $ob = DB::table('goods');
        //商品状态是否为未审核
        $ob->where('status', '=', 0);
        $list = $ob->paginate(5);
        return view('admin.goods.auditingList',['list'=>$list]);
    }

    //审核商品操作
    public function doAuditing(Request $request, $id)
    {   
        //查询需要审核的商品的数据
        $status = DB::table('goods')->where('id', $id)->first();
        //创建一个标记
        $flag = null;
        //取反
        if($status->status == 0){
            $flag = 1;
        }
        //修改商品状态
        $res = DB::table('goods')->where('id', $id)->update(['status' => $flag]);

        //判断是否审核成功
        if($res > 0){
            return redirect('admin/goodsAuditing')->with('msg', '审核成功');
        }else{
            return redirect('admin/goodsAuditing')->with('error', '审核失败');
        }
    }

    //拒绝审核操作
    public function destroyAuditing($id)
    {
        //
        //拒绝审核后从数据库删除
        $res = DB::table('goods')->where('id',$id)->delete();
        //判断是否删库成功
        if($res > 0){
            return redirect('admin/goodsAuditing')->with('msg', '拒绝审核成功');
        }else{
            return redirect('admin/goodsAuditing')->with('error', '拒绝审核失败');
        }
    }


    //显示商品详情
    public function indexShop($id)
    {
        //echo 11111;die;
        //查询商品表
        $list = DB::table('goods')->where('id',$id)->first();
        //查询此商品的发布用户
        $user = DB::table('user')->where('id',$list->uid)->first();
        
        return view('admin.goods.shopList',['list'=>$list, 'user'=>$user]);
    }
}
